package com.feeyin.radar.crm.service;

import java.util.List;
import java.util.Map;

import org.springframework.web.multipart.MultipartFile;

import com.feeyin.radar.commons.Page;
import com.feeyin.radar.crm.model.CaseAttach;
import com.feeyin.radar.crm.model.CaseProcessDiagram;
import com.feeyin.radar.crm.model.ContractCase;
import com.feeyin.radar.crm.model.ContractCaseType;
import com.feeyin.radar.crm.model.ContractDetail;
import com.feeyin.radar.crm.model.Process;

public abstract interface ContractCaseService {
	public abstract ContractCaseType getCaseType(String caseCode);

	List<ContractDetail> convertContractCaseInfoIntoVO(Long contractId);

	List<Process> getProcessListByGroupId(Long groupId);

	Long saveCaseAttach(String realPath, MultipartFile multipartFile,
			Long caseId, Long isSub);

	List<ContractDetail> getMyContractCaseOrDepts(Map paraMap,Page page);
    
	Long getMyContractCaseOrDeptsCount(Map paraMap);

	ContractDetail getSingleContractCaseToView(Integer caseId);

	List<CaseProcessDiagram> getProcessDiagram(Long processGroupId,
			Long processId);

	List<CaseAttach> getCaseAttach(Long caseId, boolean isSub);
}
